package service

import (
	"gitee.com/zenpk/backend-demo/internal/controller"
	"gitee.com/zenpk/backend-demo/internal/dal"
	"gitee.com/zenpk/backend-demo/internal/middleware"
	"gitee.com/zenpk/backend-demo/internal/util"
	"github.com/gin-gonic/gin"
)

var Router *gin.Engine

// InitTestEnv 初始化测试环境
func InitTestEnv() {
	// 加载 Viper
	if err := util.InitConfig("testing", "../../configs"); err != nil {
		panic(err)
	}
	// 加载 zap
	if err := middleware.InitLogger(); err != nil {
		panic(err)
	}
	defer middleware.Logger.Sync()
	// 加载 Gorm，连接 MySQL
	if err := dal.InitDB(); err != nil {
		panic(err)
	}
	gin.SetMode(gin.TestMode) // Gin 设置为测试模式
	Router = gin.Default()
	controller.InitRouter(Router) // 初始化 Gin 路由器
}
